1
超越線性歷史:當快進合併失敗時
AI016Lesson 5
00:00

透過 快進合併 只有在分支歷史呈連續的後代直線時,才可能實現線性歷史。一旦主分支與功能分支分叉,快進合併中簡單的「指標移動」便在數學上變得不可能。

1. 可見的差異

快進合併不會 反映在專案歷史上 這表示該分支的獨特存在於整合後幾乎被抹除。相比之下,三路合併則保留了並行工作的敘事脈絡。

2. 歷史學家原則

永久的 主分支 扮演著整個專案的歷史學家角色。它只能記錄我們允許它看到的事物;當路徑分叉時,我們被迫創建一個新的「事件」——一個 合併提交——以彌合差距,調和兩個同時演變的不同現實。

C1C2(基礎)主分支(已分叉)瘋狂(功能)分叉路徑(非線性)

3. 檢測分叉

使用 git log --oneline開發者可藉此視覺化路徑分叉的位置。若『主分支』自你建立分支以來已有前進,Git 就無法在不遺失主分支新工作的情況下向前滑動指標。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>